Міністерство освіти та науки України
Національний університет “Львівська політехніка”
Кафедра автоматизованих систем управління
Звіт
з предмету
“Системне програмування і операційні системи”
з лабораторної роботи №5
Підготував:
студент групи КН-21
Славич Юрій
Перевірила:
Павлюк О.М.
Львів - 2011
Лабораторна робота №5
Тема – Дочірні вікна: їх утворення та взаємодія, графічний контекст.
Мета – Навчитись будувати ієрархічну структуру вікон та працювати з ними.
Теоретичні відомості
InitCommonControls функція гарантує, що завантажений спільним контролем динамічну бібліотеку (DLL).
Пустота InitCommonControls (void);
GetModuleHandle повертає модуля ручку для вказаний модуль, якщо файл був відображаються в адресному просторі викликає процесу.
HMODULE GetModuleHandle
LPCTSTR lpModuleName / / адреса імені модуля, щоб повернутися ручка для
ExitProcess завершує процес і всі його потоки.
VOID ExitProcess
UINT uExitCode / / код виходу для всіх потоків
CreateWindowEx створює перекриваються, спливаюче або дочірнє вікно з розширеною стилю, в іншому випадку ця функція збігається з функцією CreateWindow. Для отримання додаткової інформації про створення вікна та повні описи інших параметрів CreateWindowEx см. CreateWindow.
HWND CreateWindowEx
DwExStyle DWORD, / / Extended стиль вікна
LPCTSTR lpClassName, / / вказівник на ім'я класу зареєстровано
LPCTSTR lpWindowName, / / вказівник на ім'я вікна
DwStyle DWORD, / / стиль вікна
Int X, / / горизонтальне положення вікна
Int Y, / / вертикальне положення вікна
Int nWidth, / / Ширина вікна
Int nHeight, / / висота вікна
HWndParent HWND, / / дескриптор з батьків або власника вікна
HMENU HMenu, / / дескриптор меню, або дитину-вікна ідентифікатора
HINSTANCE HINSTANCE, / / дескриптор екземпляра програми
LPVOID lpParam / / покажчик на вікно даних для створення
RegisterClass регістри функцій класу вікна для подальшого використання при дзвінках на CreateWindow або CreateWindowEx функції.
RegisterClass функція була замінена функцією RegisterClassEx. Ви все ще можете використовувати RegisterClass, проте, якщо вам не потрібно встановити клас маленький значок.
ATOM RegisterClass (
CONST WNDCLASS / / адресу структури з даними класу
GetMessage отримує повідомлення з викликає черги повідомлень потоку і поміщає його в зазначеній структурі. Ця функція може стати і повідомлення, пов'язані із зазначеною вікна і потік повідомлень, відправлених через PostThreadMessage функції. Функція повертає повідомлення, які знаходяться в межах зазначеного діапазону значень повідомленні. GetMessage не отримати повідомлення для вікон, які належать до тих чи інших програм.
BOOL GetMessage
LPMSG lpMsg, / / адреса структури з повідомленням
HWnd HWND, / / дескриптор вікна
UINT wMsgFilterMin, / / Перше повідомлення
UINT wMsgFilterMax / / останні повідомлення
DispatchMessage функція розсилки повідомлень до вікна процедурою. Він звичайно використовується, щоб направити послання витягується GetMessage функції.
LONG DispatchMessage
CONST MSG * lpmsg / / покажчик на структуру з повідомленням
Функція DefWindowProc викликає процедуру вікна за замовчуванням, щоб забезпечити обробки за замовчуванням для будь-якого вікна повідомлень, програма не процес. Ця функція забезпечує обробку кожного повідомлення. DefWindowProc викликається з тими ж параметрами отриманої вікно процедури.
LRESULT DefWindowProc
HWnd HWND, / / дескриптор вікна
UINT Msg, / / ідентифікатор повідомлення
WPARAM wParam, / / перший параметр повідомлення
LPARAM LPARAM / / другий параметр повідомлення
Ця функція одержує загальну, клас чи приватний контекст пристрою, в залежності від класу стилю, зазначеного для вказаного вікна. Для загального контексту пристрою, GetDC замовчуванням присвоює атрибути контексту пристрою кожен раз, коли знайшла його. Для класу і приватних контекстів прист...